@echo off
setlocal

:: 设置任务名称
set TASK_NAME=CleanOldDataFiles
:: 设置工作目录
set WORK_DIR=D:\electric
:: 设置Python路径 (使用绝对路径)
set PYTHON_PATH=c:\users\qianxiaowei\python-sdk\python3.13.2\python.exe
:: 设置脚本路径
set SCRIPT_PATH=%WORK_DIR%\clean_old_files.py
:: 设置日志文件
set LOG_FILE=%WORK_DIR%\logs\task_scheduler.log

:: 切换到工作目录
cd /d %WORK_DIR%
if %ERRORLEVEL% NEQ 0 (
    echo 无法切换到工作目录: %WORK_DIR%
    echo 无法切换到工作目录: %WORK_DIR% >> %LOG_FILE% 2>&1
    goto :exit
)

:: 删除旧任务(如果存在)
echo 删除旧任务(如果存在)... >> %LOG_FILE% 2>&1
schtasks /delete /tn %TASK_NAME% /f >> %LOG_FILE% 2>&1

:: 创建新任务: 每天凌晨2点执行一次
echo 创建新任务: 每天凌晨2点执行一次... >> %LOG_FILE% 2>&1
:: 在任务中使用cmd.exe /c来确保切换目录
schtasks /create /tn %TASK_NAME% /tr "cmd.exe /c cd /d %WORK_DIR% && %PYTHON_PATH% %SCRIPT_PATH%" /sc daily /st 02:00 /rl highest /f >> %LOG_FILE% 2>&1

:: 验证任务是否创建成功
if %ERRORLEVEL% EQU 0 (
    echo 定时任务创建成功: %TASK_NAME%
    echo 任务将在每天凌晨2点执行
    echo 日志文件: %LOG_FILE%
    echo 定时任务创建成功: %DATE% %TIME% >> %LOG_FILE% 2>&1
) else (
    echo 定时任务创建失败, 错误代码: %ERRORLEVEL%
    echo 请查看日志了解详情: %LOG_FILE%
    echo 定时任务创建失败, 错误代码: %ERRORLEVEL% >> %LOG_FILE% 2>&1
)

:exit
endlocal